1. Field of the Invention
This invention is related to the field of computer systems and, more particularly, to management of graphics data in computer systems.
2. Description of the Related Art
Computer systems may include multiple processing units which share one or more memory devices for storage of data. One example of such a system includes both a central processing unit (CPU) and a graphics unit (graphics unit) which share access to a common memory device in what may be referred to as a unified memory architecture (UMA). In such a system, the shared memory device may be used for storing graphics data for use by the graphics unit, as well as instructions and data for use by the CPU.
As is well known, computing systems frequently utilize one or more caches in order to reduce latencies due to memory accesses. CPU's are commonly configured to take advantage of caches in order to improve performance. Similarly, like a CPU, a graphics unit may also benefit from the caching of data. Therefore, systems may be designed which allow a graphics unit to share the CPU's cache. However, allowing a graphics unit to share a cache with the CPU may create a number of problems.
Generally speaking, the memory bandwidth requirements for a graphics unit may be significantly larger than that required for the CPU. For example, the storage required for an image which is being rendered may be as large as 24 MB (or larger) which is exceeds the size of a typical CPU cache. In addition, the memory bandwidth required by the rendering process may be 3 to 4 times the bandwidth required by the CPU to perform its activities related to the application. Consequently, were the graphics unit and CPU to simply share a cache, the graphics unit data would overwhelm the CPU data and CPU performance would be severely impacted.
In view of the above problems, a method and mechanism are desired which allow a CPU and graphics unit to share a cache in a manner which does not seriously impair the performance of the CPU and which may reduce memory bandwidth requirements.